package com.nix.maze;

import com.nix.control.Move;
import com.sun.org.apache.regexp.internal.RE;
import org.junit.jupiter.api.Test;

/**
 * @author zhangpei
 * @Email zhangpe0312@qq.com
 * @day 2017/12/4 15:23
 * @Use 相对方向和绝对方向的转换
 *
 *   计算公式： （转之前的绝对位置+需要转的相对位子）%4 = 当前绝对位子
 */
public class Direction {
    /**
     * 东
     */
    public final static int EAST = 3;
    /**
     * 南
     */
    public final static int SOUTH = 2;
    /**
     * 西
     */
    public final static int WEST = 1;
    /**
     * 北
     */
    public final static int NORTH = 0;

    /**
     * 0：up
     * 2:DOWN
     * 3:LEFT
     * 1:RIGHT
     * @param oldDirection 之前角色的方位
     * @param move 准备移动的方位
     *             左转 move = 3
     *             右转 move = 1
     *             后转 move = 2;
     */
    public static int getPostion(int oldDirection, int move) {
         return (oldDirection+move)%4;
    }

    @Test
    public void test(){
        System.out.println(getPostion(2,2));
    }
}
